home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2002 November / SGI IRIX Base Documentation 2002 November.iso / usr / share / catman / p_man / cat3 / SCSL / saxpy.z / saxpy
Encoding:
Text File  |  2002-10-03  |  15.3 KB  |  331 lines

  1.  
  2.  
  3.  
  4. SSSSAAAAXXXXPPPPYYYY((((3333SSSS))))                                                            SSSSAAAAXXXXPPPPYYYY((((3333SSSS))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      SSSSAAAAXXXXPPPPYYYY, CCCCAAAAXXXXPPPPYYYY, DDDDAAAAXXXXPPPPYYYY, ZZZZAAAAXXXXPPPPYYYY - Adds a scalar multiple of a real or complex
  10.      vector to another real or complex vector
  11.  
  12. SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  13.      Single precision
  14.  
  15.           Fortran:
  16.                CCCCAAAALLLLLLLL SSSSAAAAXXXXPPPPYYYY ((((_n,,,, _a_l_p_h_a,,,, _x,,,, _i_n_c_x,,,, _y,,,, _i_n_c_y))))
  17.  
  18.           C/C++:
  19.                ####iiiinnnncccclllluuuuddddeeee <<<<ssssccccssssllll____bbbbllllaaaassss....hhhh>>>>
  20.                vvvvooooiiiidddd ssssaaaaxxxxppppyyyy(((( iiiinnnntttt _n,,,, ffffllllooooaaaatttt _a_l_p_h_a,,,, ffffllllooooaaaatttt *_x,,,, iiiinnnntttt _i_n_c_x,,,, ffffllllooooaaaatttt *_y,,,,
  21.                iiiinnnntttt _i_n_c_y ))));;;;
  22.  
  23.      Double precision
  24.  
  25.           Fortran:
  26.                CCCCAAAALLLLLLLL DDDDAAAAXXXXPPPPYYYY ((((_n,,,, _a_l_p_h_a,,,, _x,,,, _i_n_c_x,,,, _y,,,, _i_n_c_y))))
  27.  
  28.           C/C++:
  29.                ####iiiinnnncccclllluuuuddddeeee <<<<ssssccccssssllll____bbbbllllaaaassss....hhhh>>>>
  30.                vvvvooooiiiidddd ddddaaaaxxxxppppyyyy(((( iiiinnnntttt _n,,,, ddddoooouuuubbbblllleeee _a_l_p_h_a,,,, ddddoooouuuubbbblllleeee *_x,,,, iiiinnnntttt _i_n_c_x,,,, ddddoooouuuubbbblllleeee
  31.                *_y,,,, iiiinnnntttt _i_n_c_y ))));;;;
  32.  
  33.      Single precision complex
  34.  
  35.           Fortran:
  36.                CCCCAAAALLLLLLLL CCCCAAAAXXXXPPPPYYYY ((((_n,,,, _a_l_p_h_a,,,, _x,,,, _i_n_c_x,,,, _y,,,, _i_n_c_y))))
  37.  
  38.           C/C++:
  39.                ####iiiinnnncccclllluuuuddddeeee <<<<ssssccccssssllll____bbbbllllaaaassss....hhhh>>>>
  40.                vvvvooooiiiidddd ccccaaaaxxxxppppyyyy(((( iiiinnnntttt _n,,,, ssssccccssssllll____ccccoooommmmpppplllleeeexxxx *_a_l_p_h_a,,,, ssssccccssssllll____ccccoooommmmpppplllleeeexxxx *_x,,,, iiiinnnntttt
  41.                _i_n_c_x,,,, ssssccccssssllll____ccccoooommmmpppplllleeeexxxx *_y,,,, iiiinnnntttt _i_n_c_y ))));;;;
  42.  
  43.           C++ STL:
  44.                ####iiiinnnncccclllluuuuddddeeee <<<<ccccoooommmmpppplllleeeexxxx....hhhh>>>>
  45.                ####iiiinnnncccclllluuuuddddeeee <<<<ssssccccssssllll____bbbbllllaaaassss....hhhh>>>>
  46.                vvvvooooiiiidddd ccccaaaaxxxxppppyyyy(((( iiiinnnntttt _n,,,, ccccoooommmmpppplllleeeexxxx<<<<ffffllllooooaaaatttt>>>> *_a_l_p_h_a,,,, ccccoooommmmpppplllleeeexxxx<<<<ffffllllooooaaaatttt>>>> *_x,iiiinnnntttt
  47.                _i_n_c_x,,,, ccccoooommmmpppplllleeeexxxx<<<<ffffllllooooaaaatttt>>>> *_y,,,, iiiinnnntttt _i_n_c_y ))));;;;
  48.  
  49.      Double precision complex
  50.  
  51.           Fortran:
  52.  
  53.                CCCCAAAALLLLLLLL ZZZZAAAAXXXXPPPPYYYY ((((_n,,,, _a_l_p_h_a,,,, _x,,,, _i_n_c_x,,,, _y,,,, _i_n_c_y))))
  54.  
  55.           C/C++:
  56.                ####iiiinnnncccclllluuuuddddeeee <<<<ssssccccssssllll____bbbbllllaaaassss....hhhh>>>>
  57.                vvvvooooiiiidddd zzzzaaaaxxxxppppyyyy(((( iiiinnnntttt _n,,,, ssssccccssssllll____zzzzoooommmmpppplllleeeexxxx *_a_l_p_h_a,,,, ssssccccssssllll____zzzzoooommmmpppplllleeeexxxx *_x,,,, iiiinnnntttt
  58.                _i_n_c_x,,,, ssssccccssssllll____zzzzoooommmmpppplllleeeexxxx *_y,,,, iiiinnnntttt _i_n_c_y ))));;;;
  59.  
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. SSSSAAAAXXXXPPPPYYYY((((3333SSSS))))                                                            SSSSAAAAXXXXPPPPYYYY((((3333SSSS))))
  71.  
  72.  
  73.  
  74.           C++ STL:
  75.                ####iiiinnnncccclllluuuuddddeeee <<<<ccccoooommmmpppplllleeeexxxx....hhhh>>>>
  76.                ####iiiinnnncccclllluuuuddddeeee <<<<ssssccccssssllll____bbbbllllaaaassss....hhhh>>>>
  77.                vvvvooooiiiidddd zzzzaaaaxxxxppppyyyy(((( iiiinnnntttt _n,,,, ccccoooommmmpppplllleeeexxxx<<<<ddddoooouuuubbbblllleeee>>>> *_a_l_p_h_a,,,, ccccoooommmmpppplllleeeexxxx<<<<ddddoooouuuubbbblllleeee>>>> *_x,,,,
  78.                iiiinnnntttt _i_n_c_x,,,, ccccoooommmmpppplllleeeexxxx<<<<ddddoooouuuubbbblllleeee>>>> *_y,,,, iiiinnnntttt _i_n_c_y ))));;;;
  79.  
  80. IIIIMMMMPPPPLLLLEEEEMMMMEEEENNNNTTTTAAAATTTTIIIIOOOONNNN
  81.      These routines are part of the SCSL Scientific Library and can be loaded
  82.      using either the ----llllssssccccssss or the ----llllssssccccssss____mmmmpppp option.  The ----llllssssccccssss____mmmmpppp option
  83.      directs the linker to use the multi-processor version of the library.
  84.  
  85.      When linking to SCSL with ----llllssssccccssss or ----llllssssccccssss____mmmmpppp, the default integer size is
  86.      4 bytes (32 bits). Another version of SCSL is available in which integers
  87.      are 8 bytes (64 bits).  This version allows the user access to larger
  88.      memory sizes and helps when porting legacy Cray codes.  It can be loaded
  89.      by using the ----llllssssccccssss____iiii8888 option or the ----llllssssccccssss____iiii8888____mmmmpppp option. A program may use
  90.      only one of the two versions; 4-byte integer and 8-byte integer library
  91.      calls cannot be mixed.
  92.  
  93.      The C and C++ prototypes shown above are appropriate for the 4-byte
  94.      integer version of SCSL. When using the 8-byte integer version, the
  95.      variables of type iiiinnnntttt become lllloooonnnngggg lllloooonnnngggg and the <<<<ssssccccssssllll____bbbbllllaaaassss____iiii8888....hhhh>>>> header
  96.      file should be included.
  97.  
  98. DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  99.      SSSSAAAAXXXXPPPPYYYY/DDDDAAAAXXXXPPPPYYYY adds a scalar multiple of a real vector to another real
  100.      vector.
  101.  
  102.      CCCCAAAAXXXXPPPPYYYY/ZZZZAAAAXXXXPPPPYYYY adds a scalar multiple of a complex vector to another complex
  103.      vector.
  104.  
  105.      These routines perform the following vector operation:
  106.  
  107.           _y <-  _a_l_p_h_a * _x + _y
  108.  
  109.      where _a_l_p_h_a is a real or complex scalar, and _x and _y are real or complex
  110.      vectors.
  111.  
  112.      See the NOTES section of this man page for information about the
  113.      interpretation of the data types described in the following arguments.
  114.  
  115.      These routines have the following arguments:
  116.  
  117.      _n         Integer.  (input)
  118.                Number of elements in the vectors.  If _n <= 0, these routines
  119.                return without any computation.
  120.  
  121.      _a_l_p_h_a     Scalar. (input)
  122.                SSSSAAAAXXXXPPPPYYYY: Single precision.
  123.                DDDDAAAAXXXXPPPPYYYY: Double precision.
  124.                CCCCAAAAXXXXPPPPYYYY: Single precision complex.
  125.                ZZZZAAAAXXXXPPPPYYYY: Double precision complex.
  126.  
  127.  
  128.  
  129.                                                                         PPPPaaaaggggeeee 2222
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136. SSSSAAAAXXXXPPPPYYYY((((3333SSSS))))                                                            SSSSAAAAXXXXPPPPYYYY((((3333SSSS))))
  137.  
  138.  
  139.  
  140.                If _a_l_p_h_a = 0 these routines return without any computation.
  141.  
  142.                For C/C++, a pointer to this scalar is passed when alpha is
  143.                complex; otherwise, alpha is passed by value.
  144.  
  145.      _x         Array of dimension (_n-1) * |_i_n_c_x| + 1.  (input)
  146.                SSSSAAAAXXXXPPPPYYYY: Single precision array.
  147.                DDDDAAAAXXXXPPPPYYYY: Double precision array.
  148.                CCCCAAAAXXXXPPPPYYYY: Single precision complex array.
  149.                ZZZZAAAAXXXXPPPPYYYY: Double precision complex array.
  150.                Contains the vector to be scaled before summation.
  151.  
  152.      _i_n_c_x      Integer.  (input)
  153.                Increment between elements of _x.  If _i_n_c_x = 0, the results will
  154.                be unpredictable.
  155.  
  156.      _y         Array of dimension (_n-1) * |_i_n_c_y| + 1.  (input and output)
  157.                SSSSAAAAXXXXPPPPYYYY: Single precision array.
  158.                DDDDAAAAXXXXPPPPYYYY: Double precision array.
  159.                CCCCAAAAXXXXPPPPYYYY: Single precision complex array.
  160.                ZZZZAAAAXXXXPPPPYYYY: Double precision complex array.
  161.                Before calling the routine, _y contains the vector to be summed.
  162.                After the routine ends, _y contains the result of the summation.
  163.  
  164.      _i_n_c_y      Integer.  (input)
  165.                Increment between elements of _y.  If _i_n_c_y = 0, the results will
  166.                be unpredictable.
  167.  
  168. NNNNOOOOTTTTEEEESSSS
  169.      These routines are Level 1 Basic Linear Algebra Subprograms (Level 1
  170.      BLAS).
  171.  
  172.      When working backward (_i_n_c_x < 0 or _i_n_c_y < 0), each routine starts at the
  173.      end of the vector and moves backward, as follows:
  174.  
  175.           _x(1-_i_n_c_x * (_n-1)), _x(1-_i_n_c_x * (_n-2)), ..., _x(1)
  176.  
  177.           _y(1-_i_n_c_y * (_n-1)), _y(1-_i_n_c_y * (_n-2)), ..., _y(1)
  178.  
  179.    DDDDaaaattttaaaa TTTTyyyyppppeeeessss
  180.      The following data types are described in this documentation:
  181.  
  182.           TTTTeeeerrrrmmmm UUUUsssseeeedddd                     DDDDaaaattttaaaa ttttyyyyppppeeee
  183.  
  184.      Fortran:
  185.  
  186.           Array dimensioned _n           xxxx((((nnnn))))
  187.  
  188.           Character                     CCCCHHHHAAAARRRRAAAACCCCTTTTEEEERRRR
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195.                                                                         PPPPaaaaggggeeee 3333
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202. SSSSAAAAXXXXPPPPYYYY((((3333SSSS))))                                                            SSSSAAAAXXXXPPPPYYYY((((3333SSSS))))
  203.  
  204.  
  205.  
  206.           Integer                       IIIINNNNTTTTEEEEGGGGEEEERRRR (IIIINNNNTTTTEEEEGGGGEEEERRRR****8888 for ----llllssssccccssss____iiii8888[[[[____mmmmpppp]]]])
  207.  
  208.           Single precision              RRRREEEEAAAALLLL
  209.  
  210.           Double precision              DDDDOOOOUUUUBBBBLLLLEEEE PPPPRRRREEEECCCCIIIISSSSIIIIOOOONNNN
  211.  
  212.           Single precision complex      CCCCOOOOMMMMPPPPLLLLEEEEXXXX
  213.  
  214.           Double precision complex      DDDDOOOOUUUUBBBBLLLLEEEE CCCCOOOOMMMMPPPPLLLLEEEEXXXX
  215.  
  216.      C/C++:
  217.  
  218.           Array dimensioned _n           xxxx[[[[_n]]]]
  219.  
  220.           Character                     cccchhhhaaaarrrr
  221.  
  222.           Integer                       iiiinnnntttt (lllloooonnnngggg lllloooonnnngggg for ----llllssssccccssss____iiii8888[[[[____mmmmpppp]]]])
  223.  
  224.           Single precision              ffffllllooooaaaatttt
  225.  
  226.           Double precision              ddddoooouuuubbbblllleeee
  227.  
  228.           Single precision complex      ssssccccssssllll____ccccoooommmmpppplllleeeexxxx
  229.  
  230.           Double precision complex      ssssccccssssllll____zzzzoooommmmpppplllleeeexxxx
  231.  
  232.      C++ STL:
  233.  
  234.           Array dimensioned _n           xxxx[[[[_n]]]]
  235.  
  236.           Character                     cccchhhhaaaarrrr
  237.  
  238.           Integer                       iiiinnnntttt (lllloooonnnngggg lllloooonnnngggg for ----llllssssccccssss____iiii8888[[[[____mmmmpppp]]]])
  239.  
  240.           Single precision              ffffllllooooaaaatttt
  241.  
  242.           Double precision              ddddoooouuuubbbblllleeee
  243.  
  244.           Single precision complex      ccccoooommmmpppplllleeeexxxx<<<<ffffllllooooaaaatttt>>>>
  245.  
  246.           Double precision complex      ccccoooommmmpppplllleeeexxxx<<<<ddddoooouuuubbbblllleeee>>>>
  247.  
  248. RRRREEEETTTTUUUURRRRNNNN VVVVAAAALLLLUUUUEEEESSSS
  249.      When _n <= 0, real _a_l_p_h_a = 0., or complex _a_l_p_h_a = 0 = 0.+0._i, these
  250.      routines return immediately with no change in their arguments.
  251.  
  252. SSSSEEEEEEEE AAAALLLLSSSSOOOO
  253.      IIIINNNNTTTTRRRROOOO____SSSSCCCCSSSSLLLL(3S), IIIINNNNTTTTRRRROOOO____BBBBLLLLAAAASSSS1111(3S)
  254.  
  255.      IIIINNNNTTTTRRRROOOO____CCCCBBBBLLLLAAAASSSS(3S) for information about using the C interface to Fortran 77
  256.      Basic Linear Algebra Subprograms (legacy BLAS) set forth by the Basic
  257.      Linear Algebra Subprograms Technical Forum.
  258.  
  259.  
  260.  
  261.                                                                         PPPPaaaaggggeeee 4444
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268. SSSSAAAAXXXXPPPPYYYY((((3333SSSS))))                                                            SSSSAAAAXXXXPPPPYYYY((((3333SSSS))))
  269.  
  270.  
  271.  
  272.  
  273.  
  274.  
  275.  
  276.  
  277.  
  278.  
  279.  
  280.  
  281.  
  282.  
  283.  
  284.  
  285.  
  286.  
  287.  
  288.  
  289.  
  290.  
  291.  
  292.  
  293.  
  294.  
  295.  
  296.  
  297.  
  298.  
  299.  
  300.  
  301.  
  302.  
  303.  
  304.  
  305.  
  306.  
  307.  
  308.  
  309.  
  310.  
  311.  
  312.  
  313.  
  314.  
  315.  
  316.  
  317.  
  318.  
  319.  
  320.  
  321.  
  322.  
  323.  
  324.                                                                         PPPPaaaaggggeeee 5555
  325.  
  326.  
  327.  
  328.  
  329.  
  330.  
  331.